std::literals::chrono_literals::operator""d
Определено в заголовочном файле <chrono> | ||
|---|---|---|
constexpr std::chrono::day operator ""d( unsigned long long d ) noexcept; | (с C++20) |
Формирует литерал std::chrono::day , представляющий день месяца в календаре.
Параметры
| d | - | значение дня |
Возвращаемое значение
Объект std::chrono::day , хранящий d. Если d > 255, сохраненное значение не определено.
Возможная реализация
constexpr std::chrono::day operator ""d(unsigned long long d) noexcept
{
return std::chrono::day(d);
} |
Примечания
Этот оператор объявлен в пространстве имен std::literals::chrono_literals, где literals и chrono_literals являются вложенными пространствами имен. Доступ к этому оператору можно получить с помощью:
-
using namespace std::literals, -
using namespace std::chrono_literals, или -
using namespace std::literals::chrono_literals.
Кроме того, внутри пространства имен std::chrono, директива using namespace literals::chrono_literals; предоставляется стандартной библиотекой, так что если программист использует using namespace std::chrono; для доступа к классам библиотеки chrono, соответствующие литеральные операторы также становятся видимыми.
Пример
#include <chrono>
#include <iostream>
int main()
{
using namespace std::literals::chrono_literals;
std::cout << static_cast<unsigned>(42d) << '\t' << 42d << '\n'
<< static_cast<unsigned>(256d) << '\t' << 256d << '\n' // unspecified
<< static_cast<unsigned>(298d) << '\t' << 298d << '\n'; // unspecified
}Возможный вывод:
42 42 is not a valid day 0 00 is not a valid day 42 42 is not a valid day
См. также
создаёт объект day (публичный член-функция std::chrono::day) |
|
| получает сохранённое значение дня (публичный член-функция std::chrono::day) |
© cppreference.com
Licensed under the Creative Commons Attribution-ShareAlike Unported License v3.0.
https://en.cppreference.com/w/cpp/chrono/operator%22%22d